scikit-learn: train_test_split
sklearn.model_selectionにある関数
https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html
引数について
第1引数はいくつでもいい(Xだけでも、Xとyでも)
test_sizeとtrain_size
If train_size is also None, it will be set to 0.25.
デフォルトでshuffle=True
デフォルトでstratify=None
If not None, data is split in a stratified fashion, using this as the class labels.
https://scikit-learn.org/stable/modules/cross_validation.html#stratification が案内される
使用例としては、Xとyのうちy(クラスラベルを表す)を渡す(Multilabel Text Classification Done Right Using Scikit-learn and Stacked Generalization)
マルチラベルでもworkするが、マルチラベルを文字列で表したときにあるクラスに1サンプルしかない場合、例外を送出する(実装 sklearn.model_selection.train_test_split)
例外が送出される場合はskmultilearn.model_selection.iterative_train_test_splitを使う
train_test_splitで可能な分割